<?

/* Inicializo
*********************************************************************************************************************/

include_once($_SERVER['DOCUMENT_ROOT'] . "/includes/loader.inc.php");

// Instancio la clase
$cuenta = new Cuenta();
$factura = new Factura();
$facturas = new Facturas();

// Defino los criterios de busqueda
$criterios = array(
	"id" => array("filtro" => "ac.id_comprobante = '|param|'", "texto" => "ID interno"),
	"tipo_comprobante" => array("filtro" => "ac.tipo_comprobante = '|param|'", "texto" => "Tipo"),
	//"fecha_desde" => array("filtro" => "|param|", "texto" => "Fecha inicial"),
	//"fecha_hasta" => array("filtro" => "|param|", "texto" => "Fecha final"),
	"numero" => array("filtro" => "ac.numero = '|param|'"),
	"id_cuenta" => array("filtro" => "ac.id_cuenta = '|param|'", "texto" => "ID Cuenta"),
	"documento" => array("filtro" => "ac.documento LIKE '%|param|%'"),
	"cae" => array("filtro" => "ac.cae LIKE '%|param|%'", "texto" => "CAE"),
	//"pagada" => array("filtro" => "ac.pagada = '|param|'"),
	//"importe" => array("filtro" => "ac.total = |param|"),
	"codebar" => array("filtro" => "ac.codebar = |param|"),
	//"tarjeta" => array()
);



/* Obtengo los datos
*********************************************************************************************************************/

// Tomo la accion
$accion = 'buscar';
if ($_REQUEST['mode'])
	$accion = addslashes($_REQUEST['mode']);
	
// Tomo el ID
if ($_REQUEST['id'])
	$id = addslashes($_REQUEST['id']);

// Tomo los parametros
if ($_REQUEST['params']) {
	$params_string = addslashes($_REQUEST['params']);
	// Guardamos una copia del string de los filtros con guiones
	$params_guiones = $params_string;
	// Y obtenemos el array de parametros
	$params = Funciones::getparams($params_string);
}

	
	

/* Acciones
*********************************************************************************************************************/

// Ver
if ($accion == 'ver') {
	
	// Creo la direccion del iframe
	$iframe = '/sic/admin/facturas/detalle/' . $id;

}
	

// Detalle - PDF
if (($accion == 'detalle') || ($accion == 'pdf')) {

	// Busco el comprobante
	$boleta = $factura->detalle($id);

	// Defino los impuestos
	$impuestos = array('iva', 'iibb', 'ganancias');
	
	// Renderizo la factura
	ob_start();
	include($_SERVER['DOCUMENT_ROOT'] . '/includes/tpl/factura.tpl.php');
	$html = ob_get_clean();
		
	// Imprimo por pantalla
	if ($accion == 'detalle')
		echo $html;

	// Imprimo por PDF
	if ($accion == 'pdf')
		Funciones::pdf($html, 'factura' . $boleta['comprobante']['tipo_comprobante'] . $boleta['comprobante']['numero']);
	
	exit;
	
}


// Listar
if ($accion == 'listar') {
		
	// Aplico los filtros
	foreach ($criterios as $key_criterio => $value_criterio) {
		if ($params[$key_criterio]) {
			$filtros[$key_criterio] = str_replace('|param|', $params[$key_criterio], $value_criterio['filtro']);
		}
	}

	// Armo las opciones para la funcion listar
	$rpp = ($params['items']) ? $params['items'] : 30;
	$page = ($params['pagina']) ? $params['pagina'] : 1;
	$opciones  = array(
		'rpp' => $rpp,
		'page' => $page,
		'filtros' => $filtros
	);

	// Obtengo el listado
	$facturas_listado = $facturas->listar($opciones);	
	
	// Agrego el enlace al detalle
	foreach($facturas_listado['data'] as $key_factura => $value_factura) {
		$facturas_listado['data'][$key_factura]['link'] = '/sic/admin/facturas/ver/' . $value_factura['id_comprobante'];
	}
	
	// Armamos la URL que van a tener los botones
	$url_filtro = '/sic/admin/facturas/listar/' . preg_replace('/items:(\d+)\/pagina:(\d+)\//', "", $params_guiones);

	// Armo el paginador con: URL base, pagina actual, resultados por pagina, pagina actual
	$paginador = Funciones::paginar($url_filtro, $rpp, $facturas_listado['resultados'], $page);
	
	// Armo los carteles de filtros
	foreach ($filtros as $key_filtro => $value_filtro) {
		$cartel[] = array(
			'filtro' => $key_filtro,
			'valor' => $params[$key_filtro],
			'url' => preg_replace('/' . $key_filtro . ':([^\\/]+)\\/?/', '', $url_filtro)
		);
	};
		
}


// Interfaz
include($_SERVER['DOCUMENT_ROOT'] . '/includes/tpl/header.tpl.php');
include($_SERVER['DOCUMENT_ROOT'] . '/includes/tpl/facturas.tpl.php');
include($_SERVER['DOCUMENT_ROOT'] . '/includes/tpl/footer.tpl.php');

?>
